There are many methods currently available for testing the memory in data processing systems like a computer system. Although the methods vary, the method depicted in FIG. 1 is typical. FIG. 1 is a flow chart of the steps performed as part of a prior method for testing memory. In step 102, the prior method writes a specific bit pattern to an area of memory that is to be tested. In step 104, the prior method reads the area of memory where the bit pattern was written. In step 106, the prior method compares the written bit pattern and the read bit pattern. In step 108, the prior method determines whether the written bit pattern and the read bit pattern are the same or equal. In step 110, if the bit patterns are not equal, the prior method indicates to the user that there is a memory error. If, however, the bit patterns are equal, processing continues. In step 112, the prior method determines whether there is more memory for testing. If the prior method determines that there is more memory for testing, the prior method continues to step 102 wherein the specific bit pattern is written to the next contiguous portion of memory. Processing continues until the entire area of memory has been tested by the repetitive writing of one bit pattern of data, reading back the bit pattern, and comparing the written bit pattern to the read bit pattern.
Various different bit patterns have been used to test memory. For example, bit patterns of all 1s and all 0s have been used. Different bit patterns can detect different types of memory errors. That is, the testing of memory with one bit pattern may not detect a certain error, whereas testing with a different pattern may detect that error. It is desirable to test memory using a bit pattern that tends to maximize the errors detected.